A communications system employs at least one physical communications link that provides means for networked applications to exchange data. A communications link is either a wired link or a wireless link defined by a set of parameters. For example, the communications link may be defined by the bandwidth, delay, jitter, packet/cell error rate, or packet/cell loss rate in order to support Quality of Service (QoS) requirement for networked applications. Networked applications exchange data over a communications link in accordance with a communications protocol. A communications protocol comprises a handshake procedure and a flow control mechanism that regulates the data exchange. To facilitate multiple users and networked applications to exchange data over the physical communications link, various Media-Access-Control (MAC) protocols are defined in accordance with the requirement of networked applications and channel characteristics of the physical link.
Based on the type of multi-access protocol used, a communications system can be categorized into two basic types. One is a contention-based multiple access communications system. The other is a coordinator-based multiple access communications system. In a contention-based network, network devices listen to the media, and transmit data when the media is free and clear of signals. Typical example of a contention-based network is the Ethernet that employs Carrier Sense Multiple Access (CSMA) protocol. A contention-based network cannot guarantee the Quality of Service requirement for networked applications. In a coordinator-based network, a network-coordinating device reserves bandwidth required by each networked application. An example of a coordinator-based network is the IEEE 802.16e network, in which the subscriber station (SS) cannot transmit data until it has been allocated a channel by the Base Station (BS). This allows the 802.16e to provide stronger support for QoS.
FIG. 1 (Prior Art) illustrates a link layer procedure for an asynchronous communication service in a coordinator-based network. A synchronized communication service such as IP television, streaming video or video conferencing requires real-time streaming media. For asynchronous communications service such as file transfer, email, or Internet browsers, on the other hand, the application does not require a constant bit rate. Instead, a variable or burst transmission rate is required from the application by making an on-demand bandwidth request to the network-coordinating device.
In the example of FIG. 1, device A sends a bandwidth request #1 to coordinating device C when it needs to send data to device B. Coordinating device C receives request #1 and in response sends grant #1 to device A. Device A then starts to transmit data after it receives grant #1. Finally, device B sends an acknowledgement (ACK) back to device A after it receives data successfully. Later on, when device A needs to send data to device B again, the same procedure is repeated. Device A starts to transmit data only after it has sent a request #2 to coordinating device C and has received a grant #2 back from coordinating device C. Therefore, this request-and-grant link layer protocol introduces extra latency because device A needs to make a request and then wait for a grant every time before it is able to transmit any data. In addition, the coordinating device lacks information to make more intelligent grant decisions. It remains a challenge to improve the intelligence of the network-coordinating device such that it can make dynamic grant decisions to facilitate upper layer flow control based on application requirements and network conditions.